home *** CD-ROM | disk | FTP | other *** search
/ EnigmA Amiga Run 1995 October / EnigmA AMIGA RUN 01 (1995)(G.R. Edizioni)(IT)[!][issue 1995-10][Aminet 7].iso / Aminet / comm / ambos / FileChecker.lha / FLC / Rexx / DirectoryToFilelist.DOpus < prev    next >
Text File  |  1995-04-26  |  2KB  |  79 lines

  1. /*
  2. $VER: DirectoryToFilelist.rexx V0.1 © by Nils Görs
  3.  Adds a complete Directory, with all Sub-Dirs, to a FileList
  4.  
  5. How to install:
  6. ---------------
  7. rx rexx:DirToFile.REXX {fu} {s}
  8.  
  9. Flags...
  10.         Output window
  11. */
  12.  
  13. List      = "C:List"        /* Where is your List command? */
  14. TO        = ">t:Filelist.tmp"    /* this is a backup-file */
  15. FileListe = "BBS:Extern/FileChecker/FileChecker.lst"    /* OUTPUT */
  16.  
  17. CompString= ".info"        /* I'll delete ALL .info entries */
  18. CompWert  = 5
  19.  
  20. OPTIONS RESULTS
  21. NL = '0a'x
  22. Bar= '"'
  23.  
  24. PARSE ARG Path
  25.  
  26. IF Path == "" THEN
  27.  DO
  28.   SAY "Benötige Pfadnamen!"
  29.   EXIT 5
  30.  END
  31.  
  32. Position=INDEX(Path,'"',2)
  33.  IF Position = 0 THEN
  34.   Path = bar||Path||bar
  35.  ELSE
  36. Path = LEFT(Path,Position)
  37.  
  38.  
  39. SAY "Bearbeite Pfad:" Path
  40.     /* SAY "Scanning Directory:" Path */
  41. SAY "Bitte haben Sie etwas Geduld!" NL
  42.     /* SAY "Please be patience!" NL */
  43.  
  44. ADDRESS COMMAND
  45. CALL TIME('Reset')
  46.   list Path "files lformat %s all" TO
  47.  
  48. TO=DELSTR(TO,1,1)
  49.  
  50. IF ~OPEN(DName,TO,"Read") THEN
  51.  DO
  52.   SAY "Kann Datei" TO "nicht lesen!"
  53.     /* SAY "Can't read:" TO */
  54.   EXIT 5
  55.  END
  56.  
  57. IF ~EXISTS(FileListe) THEN
  58.  CALL OPEN(FName,FileListe,"Write")
  59. ELSE
  60.  CALL OPEN(FName,FileListe,"Append")
  61.  
  62. DO WHILE ~EOF(DName)
  63.   InString  = READLN(DName)
  64.   Laenge=LENGTH(InString)
  65.   String2=RIGHT(InString,Compwert)
  66.  
  67.   Pos=COMPARE(String2,CompString)
  68.  IF Pos ~= 0 THEN
  69.   DO
  70.    IF InString ~= "" THEN
  71.     CALL WRITELN(FName,InString)
  72.   END
  73. END
  74. SAY "benötigte Zeit:" TIME('Elapsed') "Sek."
  75.     /* SAY "Elapsed Time:" TIME('Elapsed') "sec."*/
  76. CALL CLOSE(DName)
  77. CALL CLOSE(FName)
  78. c:DELETE TO "QUIET"
  79.